* xterm.c (XTread_socket): Never treat a modifier key as a
authorJim Blandy <jimb@redhat.com>
Sat, 19 Jun 1993 21:01:38 +0000 (21:01 +0000)
committerJim Blandy <jimb@redhat.com>
Sat, 19 Jun 1993 21:01:38 +0000 (21:01 +0000)
non_ascii_keystroke.

src/xterm.c

index 8dd20f542c5d0df0e98ebfc77d1d44f4f31dd77a..f64b2fa83de1b5786c6b6aca3e57f44bb532e2fe 100644 (file)
@@ -2893,22 +2893,22 @@ XTread_socket (sd, bufp, numchars, waitp, expected)
 
              if (numchars > 1)
                {
-                 if ((keysym >= XK_BackSpace && keysym <= XK_Escape)
-                     || keysym == XK_Delete
-                     || IsCursorKey (keysym)       /* 0xff50 <= x < 0xff60 */
-                     || IsMiscFunctionKey (keysym) /* 0xff60 <= x < VARIES */
+                 if (((keysym >= XK_BackSpace && keysym <= XK_Escape)
+                      || keysym == XK_Delete
+                      || IsCursorKey (keysym) /* 0xff50 <= x < 0xff60 */
+                      || IsMiscFunctionKey (keysym) /* 0xff60 <= x < VARIES */
 #ifdef HPUX
-                     /* This recognizes the "extended function keys".
-                        It seems there's no cleaner way.
-                        Test IsModifierKey to avoid handling mode_switch
-                        incorrectly.  */
-                     || (!IsModifierKey (orig_keysym)
-                         && (unsigned) (keysym) >= XK_Select
-                         && (unsigned)(keysym) < XK_KP_Space)
+                      /* This recognizes the "extended function keys".
+                         It seems there's no cleaner way.
+                         Test IsModifierKey to avoid handling mode_switch
+                         incorrectly.  */
+                      || ((unsigned) (keysym) >= XK_Select
+                          && (unsigned)(keysym) < XK_KP_Space)
 #endif
-                     || IsKeypadKey (keysym)       /* 0xff80 <= x < 0xffbe */
-                     || IsFunctionKey (keysym)     /* 0xffbe <= x < 0xffe1 */
-                     || x_is_vendor_fkey (orig_keysym)) /* wherever */
+                      || IsKeypadKey (keysym) /* 0xff80 <= x < 0xffbe */
+                      || IsFunctionKey (keysym) /* 0xffbe <= x < 0xffe1 */
+                      || x_is_vendor_fkey (orig_keysym))
+                     && ! IsModifierKey (orig_keysym)) /* wherever */
                    {
                      if (temp_index == sizeof temp_buffer / sizeof (short))
                        temp_index = 0;